﻿#define _CRT_SECURE_NO_WARNINGS 1

//往升序序列中插入一个数使它仍是一个升序序列
#include <stdio.h>

void insertOne(int arr[], int tag, int N, int num)
{
	int i = 0;
	int tmp = 0;
	for (i = N; i > tag; i--)
		arr[i] = arr[i - 1];
	arr[tag] = num;
}

int main() {
	int N = 0;
	int n = 0;
	int i = 0;
	int num = 0;
	int tag = 0;
	int arr[51] = { 0 };
	//输入一个整数
	scanf("%d", &N);
	//输入N个升序排列的整数，输入用空格分隔的N个整数
	while (n < N)
	{
		scanf("%d", &arr[n]);
		n++;
	}
	//输入想要进行插入的一个整数
	scanf("%d", &num);
	//查找应插入的位置
	int left = 0;
	int right = N - 1;
	for (i = 0; i < N; i++)
	{
		if (arr[i] > num)
		{
			break;
		}
		tag++;
	}
	//调用函数插入
	insertOne(arr, tag, N, num);
	//打印序列
	for (i = 0; i < N + 1; i++)
		printf("%d ", arr[i]);
	putchar('\n');

	return 0;
}